package platzerworld.kegeln.vo.ergebnis;

import java.util.HashMap;

import platzerworld.kegeln.common.KeyValueVO;
import platzerworld.kegeln.db.ergebnis.ErgebnisColumns;

/**
 * Value-Object MannschaftVO
 * 
 * @author platzerg
 */
public class ErgebnisVO extends KeyValueVO {
	private static final long serialVersionUID = 4571398944837694426L;
	
	public long spielId;

	public long spielerId;
	
	public String spielZeit;

	public long mannschaftId;

	public long gesamtergebnis=0;

	public long ergebnis501=0;
	
	public long ergebnis502=0;

	public long volle251=0;

	public long volle252=0;

	public long abraeumen251=0;

	public long abraeumen252=0;

	public long fehl251=0;

	public long fehl252=0;

	public ErgebnisVO() {

	}

	public ErgebnisVO(long spielId, long spielerId, long mannschaftId, long gesamtergebnis) {
		this.spielId = spielId;
		this.spielerId = spielerId;
		this.mannschaftId = mannschaftId;
		this.gesamtergebnis = gesamtergebnis;
	}

	public ErgebnisVO(long spielId, long spielerId, String spielZeit, long mannschaftId, long gesamtergebnis, long ergebnis501,
			long ergebnis502, long volle251, long volle252, long abr251, long abr252, long fehl251, long fehl252) {
		this.spielId = spielId;
		this.spielZeit = spielZeit;
		this.spielerId = spielerId;
		this.mannschaftId = mannschaftId;
		this.gesamtergebnis = gesamtergebnis;

		this.ergebnis501 = ergebnis501;
		this.ergebnis502 = ergebnis502;
		this.volle251 = volle251;
		this.volle252 = volle252;
		this.abraeumen251 = abr251;
		this.abraeumen252 = abr252;
		this.fehl251 = fehl251;
		this.fehl252 = fehl252;
	}
	
	public ErgebnisVO(HashMap<String, String> selHashMap){
		this.key = Integer.parseInt(selHashMap.get(ErgebnisColumns.ID));
		this.spielId = Long.parseLong(selHashMap.get(ErgebnisColumns.SPIEL_ID));
		this.spielZeit = selHashMap.get(ErgebnisColumns.SPIEL_ZEIT);
		this.spielerId = Long.parseLong(selHashMap.get(ErgebnisColumns.SPIELER_ID));
		this.mannschaftId = Long.parseLong(selHashMap.get(ErgebnisColumns.MANNSCHAFT_ID));
		this.gesamtergebnis = Long.parseLong(selHashMap.get(ErgebnisColumns.GESAMT_ERGEBNIS));
		
		this.ergebnis501 = Long.parseLong(selHashMap.get(ErgebnisColumns.ERGEBNIS_50_1));
		this.ergebnis502 = Long.parseLong(selHashMap.get(ErgebnisColumns.ERGEBNIS_50_2));
		this.volle251 = Long.parseLong(selHashMap.get(ErgebnisColumns.VOLLE_25_1));
		this.volle252 = Long.parseLong(selHashMap.get(ErgebnisColumns.VOLLE_25_2));
		this.abraeumen251 = Long.parseLong(selHashMap.get(ErgebnisColumns.ABRAEUMEN_25_1));
		this.abraeumen252 = Long.parseLong(selHashMap.get(ErgebnisColumns.ABRAEUMEN_25_2));
		this.fehl251 = Long.parseLong(selHashMap.get(ErgebnisColumns.FEHL_25_1));
		this.fehl252 = Long.parseLong(selHashMap.get(ErgebnisColumns.FEHL_25_2));
	}

	/**
	 * Zeigt an, ob das Ergebnis bereits gespeichert wurde.
	 * 
	 * @return true, wenn das Ergebnis in der Datenbank vorhanden ist.
	 */
	public boolean istNeu() {
		return key == 0;
	}
}
